Method and apparatus for decoding video signal

ABSTRACT

A method and apparatus for decoding a video signal are disclosed. A method for decoding a video signal includes obtaining block type information of a current block, confirming a prediction mode of the current block based on the block type information, obtaining, if the prediction mode of the current block is an intra prediction mode according to the prediction mode, at least one correlation parameter information using at least one neighboring pixel of the current block, obtaining an intra prediction value of the current block using the correlation parameter information, and reconstructing the current block using the intra prediction value of the current block.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.15/441,591, filed Feb. 24, 2017, which is a continuation of U.S. patentapplication Ser. No. 15/007,896, filed Jan. 27, 2016, now U.S. Pat. No.9,756,358, which is a continuation of U.S. patent application Ser. No.12/991,210, filed Dec. 21, 2010, now U.S. Pat. No. 9,277,244, which is aNational Phase of International Patent Application No.PCT/KR2009/002403, filed May 7, 2009, which claims the benefit of U.S.Provisional Patent Application Nos. 61/051,343 and 61/102,012 filed onMay 7, 2008 and Oct. 2, 2008, respectively, which claims the benefit ofKorean Patent Application No. 10-2009-0039683 filed on May 7, 2009, allof which are incorporated by reference as if fully set forth herein.

BACKGROUND OF THE INVENTION Field of the Invention

The present invention relates to a method and apparatus for decoding avideo signal.

Discussion of the Related Art

Generally, compression coding indicates a series of signal processingtechnologies which can transmit digitized information through acommunication line or can store the digitized information in a specificform suitable for a storage medium. A variety of objects can becompression-coded, for example, sound data, image (or video) data, textdata, etc. Particularly, technology for compression encoding image datais called image compression technology. Video data is characterized inthat it has spatial redundancy and temporal redundancy.

Likewise, if the spatial redundancy and the temporal redundancy are notfully removed, a compression rate is reduced while a video signal iscoded. In addition, if the spatial redundancy and the temporalredundancy are excessively removed, it is impossible to generateinformation required for decoding the video signal, resulting indeterioration of a recovery rate.

SUMMARY OF THE INVENTION

Accordingly, the present invention is directed to a method and apparatusfor decoding a video signal that substantially obviates one or moreproblems due to limitations and disadvantages of the related art.

An object of the present invention is to provide a method and apparatusfor decoding a video signal so as to increase coding efficiency of thevideo signal.

Additional advantages, objects, and features of the invention will beset forth in part in the description which follows and in part willbecome apparent to those having ordinary skill in the art uponexamination of the following or may be learned from practice of theinvention. The objectives and other advantages of the invention may berealized and attained by the structure particularly pointed out in thewritten description and claims hereof as well as the appended drawings.

To achieve these objects and other advantages and in accordance with thepurpose of the invention, as embodied and broadly described herein, amethod for decoding a video signal includes obtaining block typeinformation of a current block, confirming a prediction mode of thecurrent block based on the block type information, obtaining, if theprediction mode of the current block is an intra prediction modeaccording to the confirmed prediction mode, at least one correlationparameter information using a reference pixel, obtaining an intraprediction value of the current block using the correlation parameterinformation, and reconstructing the current block using the intraprediction value of the current block.

The reference pixel may include at least one pixel which is adjacent toa left side, an upper side, a left upper side, and a right upper side ofthe current block.

The reference pixel may be a filtering-processed pixel when theprediction mode of the current block is an intra 8×8 prediction mode.

The correlation parameter information may be obtained using a differencebetween pixels adjacent to the current block.

If the prediction mode of the current block is a vertical predictionmode, the correlation parameter information may be obtained using apixel value adjacent to a left side of the current block.

An intra prediction value of a current pixel in the current block may beobtained using vertical coordinates of the current pixel, thecorrelation parameter information, and a pixel value adjacent to anupper side of the current block.

If the prediction mode of the current block is a horizontal predictionmode, the correlation parameter information may be obtained using apixel value adjacent to an upper side of the current block.

An intra prediction value of a current pixel in the current block may beobtained using horizontal coordinates of the current pixel, thecorrelation parameter information, and a pixel value adjacent to a leftside of the current block.

If the prediction mode of the current block is a prediction mode otherthan vertical and horizontal prediction modes, the correlation parameterinformation may include vertical correlation parameter information, thatis obtained using a pixel value adjacent to a left side of the currentblock, and horizontal correlation parameter information, that isobtained using a pixel value adjacent to an upper side of the currentblock.

In another aspect of the present invention, an apparatus for decoding avideo signal includes a prediction mode confirming unit confirming aprediction mode of a current block based on block type information ofthe current block, a correlation parameter information obtaining unitobtaining, if the prediction mode of the current block is an intraprediction mode according to the confirmed prediction mode, at least onecorrelation parameter information using a reference pixel, and aprediction value obtaining unit obtaining an intra prediction value ofthe current block using the correlation parameter information.

It is to be understood that both the foregoing general description andthe following detailed description of the present invention areexemplary and explanatory and are intended to provide furtherexplanation of the invention as claimed.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are included to provide a furtherunderstanding of the invention and are incorporated in and constitute apart of this application, illustrate embodiment(s) of the invention andtogether with the description serve to explain the principle of theinvention. In the drawings:

FIG. 1 is a block diagram illustrating an apparatus for decoding a videosignal according to an embodiment of the present invention.

FIG. 2 is a structural view illustrating intra prediction according toan embodiment of the present invention.

FIG. 3 is a conceptual diagram illustrating a prediction mode fordescribing intra prediction according to an embodiment of the presentinvention.

FIG. 4 is a detailed block diagram illustrating an intra prediction unitfor obtaining a prediction value using correlation between pixelsaccording to an embodiment of the present invention.

FIGS. 5A to 8 show various examples for obtaining a predicted pixelvalue under an intra 4×4 vertical prediction mode according to thepresent invention.

FIG. 9 is a flowchart illustrating an intra prediction method forreducing rounding errors according to an embodiment of the presentinvention.

FIG. 10 is a structural view illustrating a pixel given to describe amethod for performing intra prediction using a half pixel generated froman integer pixel according to an embodiment of the present invention.

DESCRIPTION OF SPECIFIC EMBODIMENTS

Reference will now be made in detail to the preferred embodiments of thepresent invention, examples of which are illustrated in the accompanyingdrawings. Wherever possible, the same reference numbers will be usedthroughout the drawings to refer to the same or like parts. Specificterms used for the exemplary embodiments of the present invention areprovided to aid in understanding of the present invention. Thesespecific terms may be replaced with other terms within the scope andspirit of the present invention.

A bitstream of a video signal is defined as a separated hierarchicallayer structure that is called a Network Abstraction Layer (NAL) locatedbetween a Video Coding Layer (VCL) for handling motion image codingprocessing and a lower system for transmitting and storing codedinformation. The coding process outputs VCL data as an output signal,and is mapped in units of an NAL prior to the transmitting or storing ofdata. Each NAL unit includes a Raw Byte Sequence Payload (RBSP)corresponding to either compressed video data or header information. TheRBSP means the moving image compression resultant data.

The NAL unit is basically composed of a NAL header and an RBSP. The NALheader includes not only flag information (nal ref idc) for indicatingwhether a slice serving as an NAL-based reference picture is included,but also ID information (nal_unit_type) for indicating the type of NALunit. RBSP stores compressed original data, and an RBSP trailing bit isadded to the last of the RBSP so as to represent the RBSP length as amultiple of 8 bits. There are a variety of types in such an NAL unit,for example, an Instantaneous Decoding Refresh (IDR) picture, a SequenceParameter Set (SPS), a Picture Parameter Set (PPS), SupplementalEnhancement Information (SEI), etc.

In addition, the current standard restricts a target or objectiveproduct to several profiles and levels in such a manner that the productcan be implemented with appropriate costs. It is necessary for a decoderto satisfy predetermined restrictions at a corresponding profile andlevel. In order to represent functions and parameters of the decoder,two concepts (i.e., a profile and a level) are defined so that the rangeof a certain compressed image capable of being handled by the decodercan be recognized. Information about which profile incurs a basis of abitstream can be identified by a profile ID (profile idc). The profileID means a flag indicating a profile on which a bitstream is based. Forexample, in the case of H.264/AVC, a profile ID of 66 means that abitstream is based on a base line profile, a profile ID of 77 means thata bitstream is based on a main profile, and a profile ID of 88 meansthat a bitstream is based on an extended profile. The profile ID may becontained in a Sequence Parameter Set (SPS).

The sequence parameter set (SPS) means header information includinginformation related to the coding of the entire sequence. For example, aprofile, a level, etc. may be contained in the header information. Theentire compressed moving image, i.e., a sequence, must inevitably startfrom a sequence header, so that the sequence parameter set (SPS)corresponding to header information must arrive at a decoder at anearlier time than data referring to the parameter set. In conclusion,RBSP of the sequence parameter set is used as header information for themoving image compression resultant data. If a bitstream is received, aprofile ID identifies which profile is related to an input bitstream.

FIG. 1 is a block diagram illustrating an apparatus for decoding a videosignal according to the present invention.

Referring to FIG. 1, the decoding apparatus may generally include anentropy decoder 100, a inverse quantizing/inverse transforming unit 200,an intra prediction unit 300, a deblocking filter unit 400, a decodedpicture buffer unit 500, an inter prediction unit 600.

First, the decoding apparatus performs parsing in units of an NAL so asto decode a received video image. Generally, one or more sequenceparameters sets (SPSs) and picture parameter sets (PPSs) are transmittedto the decoder before a slice header and slice data are decoded. In thiscase, a variety of attribute information may be contained in either anNAL header region or an extended region of the NAL header.

The parsed bitstream is entropy decoded through the entropy decodingunit decoding unit 100, a coefficient of each macroblock, a motionvector, etc. are extracted. The inverse quantizing/inverse transformingunit 200 multiplies a received quantized value by a predeterminedconstant to obtain a transformed coefficient value, inverse-transformsthe coefficient value, and reconstructs a pixel value. The intraprediction unit 300 performs intra prediction from a decoded samplecontained in a current picture using the reconstructed pixel value. Theintra prediction unit 300 predicts a current block using pixels ofneighboring blocks of a current block within the current picture.Assuming that more correct prediction is possible, an image quality canbe improved and the coding efficiency can also be improved. Therefore,various embodiments for intra prediction will hereinafter be describedwith reference to the annexed drawings.

Meanwhile, the deblocking filter unit 400 is applied to each codedmacroblock so as to reduce block distortion. The filter softens a blockedge so as to improve an image quality of a decoded frame. Selection ofthe filtering process may depend upon boundary strength and a gradientof image samples located in the vicinity of a boundary. Filteredpictures are stored in the decoded picture buffer unit 500 so that thefiltered pictures can be output or used as reference pictures.

The decoded picture buffer unit 500 may store or open pre-coded picturesso as to perform inter prediction. In this case, in order to store oropen the pre-coded pictures in the decoded picture buffer unit 500, aframe number (frame_num) and Picture Order Count (POC) of each pictureare used. In this way, managed reference pictures can be used in theinter prediction unit 600.

Through the above-mentioned process, the inter-predicted pictures andthe intra-predicted pictures are selected according to a predictionmode, resulting in a reconstructed current picture. Various embodimentsfor performing intra prediction will hereinafter be described withreference to drawings from FIG. 2.

FIG. 2 shows a block structure for intra prediction according to anembodiment of the present invention.

During the compression coding of a video signal, intra prediction can beperformed using pixel correlation between blocks. Referring to FIG. 2, acoding order and a block (pixel) structure are given to perform 4×4intra prediction within a 16×16 macroblock. First, coding is performedin the block orders of 0˜15 constructing a 16×16 pixel. In addition, forintra prediction of a current block, the pre-coded block from amongneighboring blocks of the current block may be used. For example, a leftblock 3, an upper block 4, a left upper block 1, and a right upper block5 may be used to perform intra prediction of the current block 6. Inthis case, intra prediction of the current block can be performed usingpixels contained in the left block 3, the upper block 4, the left upperblock 1, and the right upper block 5. The pixels may be neighboringpixels A, B, C and D of the current block 6. In this case, theneighboring pixels of the current block may be pixels before or afterthe filtering. In the case of using the filtering, the number ofrounding errors is reduced so that the coding efficiency can beincreased. A detailed description of the reduced rounding errors will bedescribed later.

FIG. 3 is a conceptual diagram illustrating a prediction mode fordescribing intra prediction according to an embodiment of the presentinvention.

For intra prediction, information about which pixel value of a certainreference block will be used by a current block may be decided. In thiscase, information about which pixel value of a certain reference blockwill be used by the current block may be defined by a prediction modeindicating a prediction direction. For example, referring to FIGS. 2 and3, if a prediction mode of the current block 6 is set to 0, a pixel C ofa block 4 vertically adjacent to the current block 6 may be used. If aprediction mode of the current block 6 is set to 1, a pixel A of a block3 horizontally adjacent to the current block 6 may be used. If aprediction mode of the current block 6 is set to 2, pixels A and C ofthe blocks 3 and 4 that are horizontally and vertically adjacent to thecurrent block 6 may be used. If a prediction mode of the current block 6is set to 3 or 7, pixels C and D of the upper block 4 and the rightupper block 5 may be used. If a prediction mode of the current block 6is set to 4, 5, or 6, pixels A, B and C of the left block 3, the leftupper block 1, and the upper block 4 may be used. If a prediction modeof the current block 6 is set to 5, pixels A and C of blocks 3 and 4horizontally and vertically adjacent to the current block 6 may be used.If a prediction mode of the current block 6 is set to 8, a pixel A ofthe left block 3 may be used. For example, values of neighboring pixelsmay be used as those of pixels used for intra prediction of the currentblock without any change. For another example, modified pixel values maybe used in consideration of correlation between contiguous pixels. Foranother example, interpolation- or extrapolation- processed pixel valuesmay be used as pixels for intra prediction of the current block.Otherwise, a combination of the above-mentioned examples may also beused as necessary. Hereinafter, the above-mentioned examples will bedescribed in detail.

FIG. 4 is a detailed block diagram illustrating an intra prediction unit300 for obtaining a prediction value using correlation between pixelsaccording to an embodiment of the present invention.

Referring to FIG. 4, the intra prediction unit 300 includes a predictionmode confirming unit 310, a correlation parameter information obtainingunit 320, and a prediction value obtaining unit 330.

As previously stated in FIG. 3, the modified pixel values may be used inconsideration of correlation between pre-coded pixels for intraprediction. For example, correlation between pixels may represent atendency of pixel values of individual pixels, and may also represent avariation pattern of pixel values according to pixel positions or adifference between pixels. In the case of using the modified pixelvalues in consideration of correlation between pixels, it is necessaryto modify a conventional prediction mode or define a new predictionmode.

First, the prediction mode confirming unit 310 confirms a block type ofa current macroblock so that it can confirm a prediction mode of thecurrent macroblock. Otherwise, a newly defined prediction mode differentfrom a conventional intra prediction mode may be confirmed. If the intraprediction is performed using a pixel value obtained when the currentmacroblock is modified according to the prediction mode, the correlationparameter information obtaining unit 320 may obtain correlationparameter information to obtain the modified pixel value. In this case,the correlation parameter information may represent variables which aregenerated in consideration of a tendency of pixel values of the codedpixels, a variation pattern of pixel values depending on positions ofthe coded pixels or a difference between pixels. For example, if avariation of pixel values depending on positions of the coded pixels hasa tendency to be linearly increased or decreased, the correlationparameter information may be obtained using a linear function forindicating a linear increase or decrease. For another example, if pixelvalues depending on the positions of the coded pixels are irregularlychanged, a least square estimation method is used to obtain theaforementioned correlation parameter information. In this case, two ormore correlation parameter information may be obtained according to thedegree of pixel value variation.

Likewise, if the correlation parameter information is obtained, theprediction value obtaining unit 330 may obtain a predicted pixel valueusing the obtained correlation parameter information and the pre-codedpixel value. A detailed description of a method for obtaining thecorrelation parameter information will hereinafter be described withreference to the annexed drawings.

FIGS. 5A to 8 show various examples for obtaining a predicted pixelvalue under an intra 4×4 vertical prediction mode according to thepresent invention.

FIGS. 5A and 5B show a current 4×4 block and pixels adjacent to the 4×4block. Although the pixels may represent pre-coded pixels obtainedbefore the current block, the scope or spirit of the present inventionis not limited thereto. Pixels (I, J, K and L) indicate pixelscontiguous to a left boundary of the current block, a pixel M indicatesa pixel that is diagonally adjacent to the left upper pixel of thecurrent block, and pixels (A, B, C and D) indicate pixels adjacent to anupper boundary of the current block. Assuming that the left upper pixelposition of the current block is denoted by (0,0), coordinates of eachpixel in the current block is shown in FIGS. 5A and 5B. If theprediction mode of the current block indicates a vertical predictionmode, the estimated value of pixels in the current block can be obtainedusing pixels A, B, C and D adjacent to the upper side of the currentblock. In this case, the following equation 1 may be used.

pred4×4_(L) [x,y]=p[x,−1], where x,y=0..3   [Equation 1]

In Equation 1, ‘x’ or ‘y’ indicates a position of a pixel in the currentblock, and ‘pred4×4_(L)[x,y]’ is a predicted value of each pixel.

In accordance with embodiments of the present invention, a predictedvalue of the current block can be obtained in consideration of avariation pattern of pixels adjacent to the current block. For example,if the prediction mode of the current block indicates a vertical mode,the embodiment does not use a value of a pixel adjacent to the upperside of the current block without any change as shown in Equation 1, andcan obtain a prediction value in consideration of a variation of pixelvalues adjacent to the current block. In this case, although aneighboring pixel to be used may be at least one of pixels (I, J, K andL) adjacent to the left side of the current block, a pixel M adjacent tothe left upper side, and a pixel adjacent to a left lower side of thecurrent block, the scope or spirit of the present invention is notlimited thereto. Accordingly, it is necessary to obtain correlationparameter information in which a variation in values of pixels adjacentto the current block is reflected.

FIG. 6 shows pixels (I, J, K and L) adjacent to the left side of thecurrent block and a pixel value depending on the position of a pixel Madjacent to the left upper side of the current block. In FIG. 6, an Xaxis represents positions of pixels (I, J, K and L) adjacent to the leftside of the current block based on the pixel M adjacent to the leftupper side, and a Y axis represents a pixel value. In this case,assuming that a variation pattern of pixels adjacent to the currentblock is linear based on the pixel M, correlation parameter informationshown in the following Equation 3 can be obtained using a least squareestimation method shown in the following Equation 2.

$\begin{matrix}{\arg \; {\min\limits_{a}{\sum\limits_{i = 0}^{4}{\left( {{ax}_{i} + y_{0} - y_{i}} \right)^{2}.}}}} & \left\lbrack {{Equation}\mspace{14mu} 2} \right\rbrack \\{a = {\frac{{\sum{x_{i}y_{i}}} - {y_{0}{\sum x_{i}}}}{\sum x_{i}^{2}} = {\frac{I + {2J} + {3K} + {4L} - {10M}}{30}.}}} & \left\lbrack {{Equation}\mspace{14mu} 3} \right\rbrack\end{matrix}$

In the above-mentioned embodiment, correlation parameter information isobtained based on a pixel M. That is, a value of the pixel M issubstituted into a value of y₀ shown in Equation 2, so that correlationparameter information can be obtained using a difference value betweenthe pixel M and neighboring pixels.

Referring to FIG. 7 showing another embodiment for obtaining suchcorrelation parameter information, on the assumption that a variationpattern of contiguous pixels of the current block is configure in theform of a linear form by which the pixel M is linearly connected toanother pixel P located farthest from the pixel M, the correlationparameter information may be obtained. In this case, the correlationparameter information can be obtained by the following equation 4.

$\begin{matrix}{{a = \frac{L - M}{4}}{a = \frac{L - M}{4}}} & \left\lbrack {{Equation}\mspace{14mu} 4} \right\rbrack\end{matrix}$

The embodiments described in FIGS. 6 and 7 have illustrated variousexamples for obtaining correlation parameter information on theassumption that a variation pattern of neighboring pixels of the currentblock is linear.

FIG. 8 shows another embodiment of the present invention. In moredetail, FIG. 8 shows a method for obtaining correlation parameterinformation on the assumption that a variation pattern of neighboringpixels of a current block is non-linear.

In the same manner as in FIG. 6, FIG. 8 shows pixels (I, J, K and L)adjacent to the left side of the current block and a pixel value basedon the position of a pixel M adjacent to the left upper side of thecurrent block. In this case, on the assumption that a variation patternof pixels adjacent to the current block is non-linear based on the pixelM, correlation parameter information can be obtained using the leastsquare estimation method of Equation 5.

$\begin{matrix}{\arg \; {\min\limits_{a,b}{\sum\limits_{i = 0}^{4}{\left( {{ax}_{i}^{2} + {bx}_{i} + y_{0} - y_{i}} \right)^{2}.}}}} & \left\lbrack {{Equation}\mspace{14mu} 5} \right\rbrack\end{matrix}$

In Equation 5, ‘a’ or ‘b’ represents correlation parameter information.The correlation parameter information may be obtained through Equations2 to 3.

The obtained correlation parameter information may be used to obtain anintra prediction value of the current block. For example, if theprediction mode of the current block is a 4×4 vertical prediction mode,prediction values of pixels in the current block may be obtained usingnot only pixels (A, B, C and D) adjacent to the upper side of thecurrent block but also the correlation parameter information. In thiscase, the following equation 6 may be used as necessary.

pred4×4_(L) [x,y]=round((y+1)*a+p[x,y−1]), where x,y=0..3   [Equation 6]

In Equation 6, ‘x’ or ‘y’ represents a position of a pixel in thecurrent block, ‘a’ represents correlation parameter information, and‘pred4×4_(L)[x,y]’ represents a prediction value of each pixel. Equation6 may be used when pixels have a linear variation pattern. If pixelshave a non-linear variation pattern, an equation in which thecorrelation parameter information ‘a’ and ‘b’ is used may beadditionally defined. On the assumption that a variation pattern ofpixels adjacent to the current block is linear, FIG. 5A shows intraprediction values of individual pixels. On the assumption that avariation pattern of pixels adjacent to the current block is non-linear,FIG. 5B shows intra prediction values of individual pixels.

In accordance with another embodiment of the present invention, if aprediction mode of the current block is an intra 4×4 horizontalprediction mode, a prediction value of each pixel in the current blockmay be obtained through pixels (I, J, K and L) adjacent to the left sideof the current block. In this case, the following equation 7 may beused.

pred4×4_(L) [x,y]=p[−1, y], where x,y=0..3   [Equation 7]

In equation 7, ‘x’ or ‘y’ represents a position of a pixel in thecurrent block, and ‘pred4×4_(L)[x,y]’ represents a prediction value ofeach pixel. The same scheme as that of the intra 4×4 vertical predictionmode described in FIGS. 5A to 8 may be applied to the embodiments of thepresent invention. For example, as can be seen from FIG. 7, theembodiment does not use values of pixels adjacent to the left side ofthe current block without any change, and can obtain a prediction valuein consideration of a variation in values of pixels adjacent to thecurrent block. In this case, although the contiguous pixel to be usedmay be at least one of pixels (A, B, C and D) adjacent to the upper sideof the current block, a pixel M adjacent to the left upper side, and apixel (not shown) adjacent to the right upper side, the scope or spiritof the present invention is not limited thereto.

The embodiment can obtain correlation parameter information using theschemes shown in FIGS. 5A to 8, and the obtained correlation parameterinformation may be used to obtain an intra prediction value of thecurrent block. For example, on the assumption that a prediction mode ofthe current block is an intra 4×4 horizontal prediction mode, aprediction value of each pixel in the current block can be obtainedusing not only pixels (I, J, K and L) adjacent to the left side of thecurrent block but also the correlation parameter information. In thiscase, the following equation 8 may be used.

pred4×4_(L) [x,y]=round((x+1)*a +p[x−1,y]), where x,y=0..3   [Equation8]

In equation 8, ‘x’ or ‘y’ represents a position of a pixel in thecurrent block, and ‘pred4×4_(L)[x,y]’ represents a prediction value ofeach pixel.

Although the above-mentioned embodiment has been disclosed based on onlypixels adjacent to the current block, the scope or spirit of the presentinvention is not limited thereto. For example, referring to FIG. 5A, aprediction value of a column of the pixel A can be obtained inconsideration of a variation pattern of pixels in a column of the pixelM, and a prediction value of a column of the pixel B can be obtained inconsideration of a variation pattern of a column of the obtained pixelA. The same method as described above may also be applied to a pixel (C)column and a pixel (D) column. Such methods may also be applied to thefollowing embodiments as necessary.

In accordance with another embodiment of the present invention,prediction values of pixels in the current block can be obtained throughat least one of pixels (A, B, C and D) adjacent to the upper side of thecurrent block, a pixel M adjacent to the left upper side, and pixels (I,J, K and L) adjacent to the left side of the current block. For example,the embodiment of the present invention may obtain correlation parameterinformation in consideration of pixel value variation patterns of upperand left pixels adjacent to the current block. In this case, theaforementioned vertical prediction mode may be applied to a pixel valuevariation pattern of the upper pixel, and the aforementioned horizontalprediction mode may be applied to a pixel value variation pattern of theleft pixel.

In more detail, if the prediction mode of the current block is an intra4×4 diagonal down-left prediction mode, correlation parameterinformation may be obtained considering all pixel value variationpatterns of the upper and left pixels adjacent to the current block. Aprediction value of the current block can be obtained using the obtainedcorrelation parameter information, as represented by the followingequation 9.

pred4×4_(L) [x,y]=pred4×4_(L)[x,y]_(PIX)+round(−a_(H)*(y+1)+a_(V)*(x+1)), wherein x,y=0..3  [Equation 9]

In this case, ‘x,y=0..3’ represents a position of pixels in the currentblock, ‘a_(H)’ represents correlation parameter information consideringa pixel value variation pattern of an upper pixel adjacent to thecurrent block, and ‘a_(V)’ represents correlation parameter informationconsidering a pixel value variation pattern of a left pixel adjacent tothe current block. In addition, ‘pred4×4_(L)[x,y]’ represents aprediction value of each pixel in the current block, and‘pred4×4_(L)[x,y]_(PIX)’ represents a prediction value obtained withoutconsidering a variation pattern of contiguous pixels.

In the same manner as described above, on the assumption that aprediction mode of the current block is an intra 4×4 diagonal down-rightprediction mode, an intra 4×4 vertical right prediction mode, an intra4×4 horizontal-down prediction mode, an intra 4×4 vertical leftprediction mode, or an intra 4×4 horizontal-up prediction mode, aprediction value of the current block can be obtained as shown in thefollowing equations 10 to 14.

pred4×4_(L) [x,y]=pred4×4_(L) [x,y] _(PIX)+round(a _(H)*(y+1)+a_(V)*(x+1))   [Equation 10]

pred4×4_(L) [x,y]=pred4×4_(L) [x,y] _(PIX)+round(a _(H)*(y+1)+a_(V)*(x+1))   [Equation 11]

pred4×4_(L) [x,y]=pred4×4_(L) [x,y] _(PIX)+round(a _(H)*(y+1)+a_(V)*(x+1))   [Equation 12]

pred4×4_(L) [x,y]=pred4×4_(L) [x,y] _(PIX)+round(−a _(H)*(y+1)+a_(V)*(x+1))   [Equation 13]

pred4×4_(L) [x,y]=pred4×4_(L) [x,y] _(PIX)+round(a _(H)*(y+1)−a_(V)*(x+1))   [Equation 14]

Equations 9 to 14 illustrate one embodiment of the present invention. Inanother embodiment, a weight considering a prediction direction may beassigned to the horizontal or vertical parameter information.

Although the above-mentioned embodiments have been disclosed based ononly the 4×4 block, a technical idea of the present invention may alsobe applied to other blocks (e.g., 8×8 block, 16×16 block, 32×32 block,64×64 block, etc.) without departing from the spirit or scope of thepresent invention. In addition, a prediction method according to thepresent invention may modify a prediction value obtaining process basedon a conventional prediction mode or may be designed to define a newprediction mode.

FIG. 9 is a flowchart illustrating an intra prediction method forreducing rounding errors according to an embodiment of the presentinvention.

Referring to FIG. 9, a block type of the current block can be obtainedfrom a block layer (Step S910). A prediction mode of the current blockcan be confirmed (Step S920). If the prediction mode of the currentblock is an intra 8×8 prediction mode, intra 8×8 prediction isperformed.

During the intra prediction, information about whether reference pixelsare filtered may affect the improvement of coding efficiency or imagequality. In this case, the reference pixels may represent pixelsadjacent to the current block, and may be used to generate a predictionvalue. For example, pixels A, B, C, D, M, I, J, K and L shown in FIG. 5Amay be used as such reference pixels. For another example, the referencepixels may represent a value (for example, an interpolation pixel, afiltered pixel, etc.) derived from pixels adjacent to the current block,

Therefore, in the case of using the filtered value as such a referencepixel, one or more rounding errors may be encountered in the filteringprocess. The rounding error is generated in various operations (e.g.,rounding-up, ceiling, and floor operations). For example, referring toFIG. 5A, pixels (B, C and D) adjacent to the upper side of the currentblock and pixels (not shown) adjacent to the right upper side of thecurrent block are filtered using the following equation 15.

p′[x,−1]=(p[x−1,−1]+2*p[x,−1]+p[x+1,−1]+2)>>2, where x=1..7   [Equation15]

When intra prediction is performed using such filtered reference pixels,the rounding error may be re-generated in a process of obtaining aprediction value. For example, if a prediction mode of the current blockis a diagonal down-left prediction mode, a prediction value can beobtained using the following equation 16.

pred8×8_(L) [x,y]=(p′[x+y,−1]+2*p′[x+y+1,−1]+p′[x+y+2,−1]+2)>>2, wherex,y=0..7   [Equation 16]

In Equation 16, p′[x,y] indicates a filtered reference pixel.

If the number of rounding errors repeatedly generated in the filteringprocess and the prediction value obtaining process is reduced, accuracyof prediction may be enhanced. Therefore, assuming that the filteringprocess and the prediction value obtaining process are combined into oneequation, the number of rounding errors can be reduced.

For example, if Equation 15 and Equation 16 are combined into oneequation, the following equation 17 can be obtained.

pred8×8_(L)[x,y]=(p[x+y−1,−1]+4*p[x+y,−1]+6*p[x+y+1,−1]+4*p[x+y+2,−1]+p[x+y+3,−1]+8)>>4  [Equation 17]

That is, with reference to Equation 17, a prediction value can beobtained using a reference pixel instead of the filtered pixel. In thiscase, filtering may be applied to Equation 17. Therefore, a predictionvalue of the current block can be obtained using Equation 17 to whichthe filtering is applied (Step S930). The current block may bereconstructed using the prediction value (Step S940).

Although the embodiment shown in FIG. 9 has been disclosed based on the8×8 block, a technical idea of the present invention may also be appliedto other blocks (e.g., 4×4 block, 16×16 block, 32×32 block, 64×64 block,etc.) without departing from the spirit or scope of the presentinvention. In addition, the embodiment shown in FIG. 9 may also beapplied to a prediction mode having repeated rounding errors from among9 prediction modes of FIG. 3. Further, the embodiment of FIG. 9 may alsobe applied not only to a part for intra prediction but also a parthaving repeated rounding errors throughout the whole decoding process.

FIG. 10 is a structural view illustrating a pixel given to describe amethod for performing intra prediction using a half pixel generated froman integer pixel according to an embodiment of the present invention.

Referring to FIG. 10, the current block includes a plurality of pixelsto be encoded (or decoded), and pre-encoded (or pre-decoded) integerpixels are located in neighboring regions (left side, left upper side,upper side, and right upper side regions) of the pixels. It can berecognized that a half pixel (or half pel) is located between a pixel ofthe current block and an integer pixel (or integer pel) of a neighboringblock. If the left upper pixel of the current block is located at (0,0),the position of the half pixel may be represented by the followingequation 18.

Half pixel (x,y)=(m/c, n/c)   [Equation 18]

In Equation 18, at least one of ‘m’ and ‘n’ is ‘−1’, and ‘c’ is aconstant indicating an integer.

In the same manner as in the integer pixel, the half pixel may bepresent in a left region, a left upper region, an upper region, and aright upper region of the current block. Various embodiments may be usedfor generating such a half pixel. The half pixel can be generated usingthe integer pixel in each neighboring pixel of the current block and afilter. For example, a first half pixel may be generated using at leasttwo integer pixels in a neighboring pixel of the current block and avertical filter. In addition, a second half pixel can be generated usingat least two integer pixels in a neighboring pixel of the current blockand the horizontal filter. In this case, the aforementioned neighboringblock may include a left block, a left upper block, an upper block, anda right upper block contiguous to the current block. Otherwise, theneighboring block may represent a pre-coded block adjacent to thecurrent block. The first or second half pixel may be a half pixeladjacent to the current block.

In addition, a third half pixel may be generated using the first halfpixel and the horizontal filter, and a fourth half pixel may begenerated using the second half pixel and the vertical filter.Furthermore, more precise pixel may be generated by a combination of aninteger pixel and a pre-generated half pixel.

When performing intra prediction using the aforementioned half pixels,accuracy of prediction may be enhanced.

Meanwhile, the encoding apparatus (not shown) may decide a predictionmode of the current block using at least one of a half pixel and aninteger pixel. For example, a coding efficiency in the case of using thehalf pixel, a coding efficiency in the case of using the integer pixel,and a coding efficiency in the case of using both the half pixel and theinteger pixel are calculated, and an optimum coding efficiency isselected from among the calculated coding efficiency results, so thatthe encoding apparatus may decide a prediction mode according to theselected result. In addition, information about the prediction mode maybe transmitted to the decoding apparatus. In this case, the predictionmode may be newly defined, or the intra prediction process may bemodified under the control of a conventional prediction mode. Forexample, if a prediction mode using the half pixel (half_pel_pred_mode)is newly defined, the prediction mode (half_pel_pred_mode) may bedefined as nine prediction modes in the same manner as in FIG. 3, or mayalso be defined as only some of the nine prediction modes as necessary.

In accordance with another embodiment of the present invention, currentblock's integer pixels padded to neighboring blocks of the current blockmay be used to generate half pixels. For example, assuming that aprediction mode of the current block is a padding mode, predeterminedvalues are padded to pixels of the current block, and half pixels can begenerated using the padded integer blocks and the integer pixels of eachneighboring block. In this case, the padding mode indicates a predictiondirection. In other words, the padding mode means the direction ofinteger pixels to be used when a value of an integer pixel present in aneighboring block of the current block is set to a pixel value of thecurrent block.

Likewise, if the intra prediction is performed using half pixelsobtained using the padding mode, accuracy of prediction may be enhanced.

A technical idea of the aforementioned embodiments can also be appliedto other embodiments of the present invention, and a combination ofindividual embodiments may also be possible although not all theembodiments are disclosed. For example, when generating the half pixeldescribed above, correlation parameter information may be generated inconsideration of correlation of neighboring pixels disclosed in FIGS. 4to 8. In other words, it is possible to generate half pixels to whichcorrelation parameter information is applied, and a new prediction modefor indicating the generated half pixels may be defined.

In accordance with another embodiment of the present invention, if acurrent block is located at a boundary of a picture, this embodiment cangenerate pixels located outside of the boundary of the picture usingpixels in the picture. In addition, since the generated pixels arefurther used in the embodiment, accuracy of prediction may be enhanced.In this case, pixels located outside of the boundary of the picture maybe generated using at least one of interpolation, filtering, andpadding.

In accordance with another embodiment of the present invention, theembodiment proposes, when reconstructing a current picture using intraprediction, a new intra prediction mode for simultaneouslyreconstructing a plurality of blocks constructing the current picture inunits of a pixel, differently from a reconstructing method in which acurrent picture is reconstructed in a zigzag direction in units of ablock. In more detail, the above-mentioned embodiment allows pixelsbelonging to several blocks constructing a current picture tosequentially perform intra prediction according to a prediction order,whereas a conventional method performs intra prediction at a left upperblock adjacent to the current picture and then performs such intraprediction at a right block adjacent to the current picture.

For example, a first pixel of the current block can be predicted usingneighboring blocks located in a previous frame that has been primarilyreconstructed. In this case, although a first pixel to be initiallyintra-predicted in the current block may be a pixel located at the rightlower end in the current block, the scope or spirit of the first pixelis not limited thereto. After that, intra prediction of neighboringpixels is performed using the first pixel, pixel prediction information,and residual. The pixel prediction information may include at least oneof a prediction pixel (predictor) used for intra prediction of eachneighboring pixel, a prediction method, and a prediction direction.

In more detail, a first pixel located at the right lower end in thecurrent block is initially intra-predicted using pixels located in aprevious frame. In this case, the prediction mode for predicting thefirst pixel may use all of the nine prediction modes described above.Intra prediction of the second pixel may be performed using the firstpixel. Although the prediction mode according to the embodiment of thepresent invention may use the following two methods as an intraprediction mode for the second to N-th pixels (other than the firstpixel), the scope or spirit of the present invention is not limitedthereto.

A first method is an averaging mode for performing prediction using anaverage value of neighboring pixels, and a second method is adirectional mode for performing prediction according to a direction ordirectivity. That is, the first method determines a pixel correspondingto an average value of the closest neighboring pixels to the currentpixel where intra prediction is to be performed to be a predictionpixel, and then performs intra prediction of the current pixel. Thesecond method calculates a difference between two pixels located closestto the current pixel in each of 8 directions based on the current pixel,and determines one direction having the smallest difference to be aprediction direction. A pixel corresponding to an average value of twopixels located closest to the current pixel in the selected predictiondirection is determined to be a prediction pixel of the current pixel,such that intra prediction of the current pixel is performed. In thiscase, in case of the second pixel, intra prediction may be carried outusing an average value of first pixels, a difference between firstpixels located in a first direction from the second pixel is calculated,and a pixel corresponding to an average value of the first pixel is usedas a prediction pixel, resulting in execution of intra prediction.

In addition, in case of the third pixel, each of first and second pixelswhere neighboring prediction is completed is used as a prediction pixelof the third pixel, and intra prediction of the third pixel isperformed. The third pixel may use a pixel corresponding to an averagevalue of first and second pixels adjacent to each other as a predictionpixel.

In addition, in case of the fourth pixel, each of first to third pixelswhere prediction is completed is used as a prediction pixel of thefourth pixel, and intra prediction of the fourth pixel is performed. Thefourth pixel may use a pixel corresponding to an average value of firstto third pixels adjacent to one another as a prediction pixel.

In addition, in case of the fifth pixel, each of first to fourth pixelswhere prediction is completed is used as a prediction pixel of the fifthpixel, and intra prediction of the fifth pixel is performed. The fifthpixel may use a pixel corresponding to an average value of first tothird pixels adjacent to one another as a prediction pixel. For example,the embodiment calculates a difference between two pixels in each of afirst direction including third and fourth pixels and a second directionincluding first and second pixels, compares the difference derived fromthe first direction with the other difference derived from the seconddirection, and decides one direction having a smaller difference to be aprediction direction. If it is assumed that the first direction isselected as a prediction direction, a prediction pixel for performingintra prediction of the fifth pixel may be a pixel corresponding to anaverage of the third and fourth pixels adjacent to the fifth pixel inthe first direction.

As described above, intra prediction from the sixth pixel to the 16thpixels can be performed using prediction-completed neighboring pixels.

Meanwhile, whenever intra prediction is performed in the range from thefirst pixel to the N-th pixel and pixel prediction information andresidual of each pixel are generated, the encoding apparatus (not shown)determines whether intra prediction of the current block is completed.If the intra prediction of the current block is completed, the encodingapparatus transmits pixel prediction information and residual of thefirst to N-th pixels.

The intra prediction unit 300 for use in the apparatus for decoding avideo signal according to the present invention receives pixelprediction information and residuals of the first to N-th pixels,thereby reconstructing the current block. First, the intra predictionunit 300 reconstructs a first pixel of the current block using thereceived pixel prediction information and residual of the first pixel,and reconstructs a second pixel of the current block using thereconstructed first pixel and pixel prediction information and residualof the second pixel. In this way, the intra prediction unit 300sequentially reconstructs the remaining pixels to the N-th pixel, sothat the current block can be completely reconstructed.

As described above, the method for decoding a video signal according tothe second embodiment of the present invention uses applies only pixelsof neighboring blocks of the current block but also neighboring pixelsof the current block to the process of intra prediction, so that moreaccurate prediction is possible. In addition, the decoding methodaccording to the second embodiment of the present invention performsprediction using a predictor value selected from among two or moredirections, so that a block having many more zero coefficients isgenerated in a discrete cosine transform (DCT) operation, resulting inincreased coding efficiency.

In accordance with another embodiment of the present invention, thepresent invention proposes an intra skip mode for performing intraprediction of the current block. The intra skip mode, if a predeterminedcondition is given, uses pixel values of neighboring blocks withoutperforming prediction based on the neighboring blocks.

The conventional intra prediction uses a 16×16 block, a 8×8 block, and a4×4 block, and is performed out using 9 intra prediction modes. However,assuming that the intra prediction mode is required due to the reductionin correlation between screen images and a current block and neighboringblocks are homogeneous, a method for using the neighboring blockswithout any change may be more efficient than the conventional intraprediction method.

Provided that a current block uses the intra skip mode and higherefficiency is given, the encoding apparatus (not shown) selects an intraskip mode, decides a prediction block, and transmit intra skipinformation and the selected prediction block information to thedecoding apparatus. In this case, the intra skip information may be flaginformation (intra_skip_flag) indicating whether a current block usesthe intra skip mode.

If the intra skip mode flag information (intra_skip_flag) is set to ‘1’,a value of a reference pixel in a neighboring block may be used as apixel value of the current block without any change. In contrast, if theintra skip mode is not performed in the current block, it is possible toreconstruct the current block using the conventional intra predictionmethod (or other intra prediction methods described above).

As described above, in the case of using the intra skip mode accordingto the present invention, a video signal, that is inefficient in interprediction and is homogenous to neighboring blocks, can be effectivelypredicted and reconstructed. In addition, the apparatus or method of thepresent invention need not perform intra prediction and need nottransmit residual and CBP (Coded Block Pattern), resulting in areduction in bit rate.

As described above, the above-mentioned embodiments of the presentinvention may be implemented as a computer-readable code stored in arecording medium including a program. The computer-readable recordingmedium may include all kinds of recording devices, each of which storesdata readable by a computer system. For example, the computer-readablerecording medium may be a ROM, a RAM, a CD-ROM, a magnetic tape, afloppy disc, an optical-data storage unit, or the like. For anotherexample, the computer-readable storage medium may also be implemented inthe form of carrier waves (e.g., data transmission over the Internet).In addition, a bitstream generated by the inventive encoding method maybe stored in a computer-readable storage medium or may be transmittedover a wired/wireless communication network.

As apparent from the above description, the exemplary embodiment of thepresent invention has the following effects.

The embodiment of the present invention obtains a prediction value of acurrent block in consideration of a tendency or variation of pixelsneighboring with the current block, so that it can perform more accurateprediction.

When filtering a reference pixel to obtain a more accurate intraprediction value, the embodiment of the present invention reducesrounding errors repeatedly encountered in the filtering process and theprocess for obtaining the prediction value, resulting in implementationof more accurate prediction.

In addition, if a current block is located at a boundary betweenpictures, the embodiment of the present invention can generate pixelslocated outside of the boundary using pixels in each picture. Inaddition, the embodiment of the present invention also uses thegenerated pixels, resulting in implementation of more accurateprediction.

In addition, the embodiment of the present invention performs intraprediction of a current block using a half pixel of a neighboringregion, resulting in implementation of more accurate prediction.

If the embodiment of the present invention uses an intra skip mode, itmay efficiently predict or reconstruct a video signal which incursinefficient inter prediction and is very similar to those of neighboringblocks. In this case, the embodiment of the present invention does notperform prediction and need not transmit CBP (Coded Block Pattern) andresidual, resulting in reduction in a used bit rate.

It will be apparent to those skilled in the art that variousmodifications and variations can be made in the present inventionwithout departing from the spirit or scope of the inventions. Thus, itis intended that the present invention covers the modifications andvariations of this invention provided they come within the scope of theappended claims and their equivalents.

What is claimed is:
 1. A method for decoding a video signal comprising:obtaining block type information of a current block; confirming aprediction mode of the current block based on the block typeinformation; obtaining, if the prediction mode of the current block isan intra prediction mode according to the prediction mode, at least onecorrelation parameter information using at least one reference pixel ofthe current block; obtaining an intra prediction value of the currentblock using the correlation parameter information; and reconstructingthe current block using the intra prediction value of the current block.